using System;
using System.Collections.Generic;
using ns26;
using ns27;

namespace Triton.Game.Mapping
{
	[Attribute38("TournamentMedal")]
	public class TournamentMedal : PegUIElement
	{
		public GameObject m_banner => method_3<GameObject>("m_banner");

		public UberText m_rankNumber => method_3<UberText>("m_rankNumber");

		public UberText m_legendIndex => method_3<UberText>("m_legendIndex");

		public GameObject m_rankMedal => method_3<GameObject>("m_rankMedal");

		public GameObject m_starPrefab => method_3<GameObject>("m_starPrefab");

		public GameObject m_wildFlair => method_3<GameObject>("m_wildFlair");

		public Material m_starFilledMaterial => method_3<Material>("m_starFilledMaterial");

		public GameObject m_glowPlane => method_3<GameObject>("m_glowPlane");

		public List<Transform> m_evenStarBones => method_3<Class271<Transform>>("m_evenStarBones")?.method_25();

		public List<Transform> m_oddStarBones => method_3<Class271<Transform>>("m_oddStarBones")?.method_25();

		public MedalInfoTranslator m_medal => method_3<MedalInfoTranslator>("m_medal");

		public List<GameObject> m_stars => method_3<Class271<GameObject>>("m_stars")?.method_25();

		public bool m_isWild => method_2<bool>("m_isWild");

		public Texture m_standardMedalTexture => method_3<Texture>("m_standardMedalTexture");

		public Texture m_wildMedalTexture => method_3<Texture>("m_wildMedalTexture");

		public bool m_showStars => method_2<bool>("m_showStars");

		public TournamentMedal(IntPtr address, string className)
			: base(address, className)
		{
		}

		public TournamentMedal(IntPtr address)
			: this(address, "TournamentMedal")
		{
		}

		public new void Awake()
		{
			method_8("Awake");
		}

		public void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public void SetMedal(NetCache.NetCacheMedalInfo medal, bool showStars)
		{
			method_9("SetMedal", new Class276.Enum20[2]
			{
				Class276.Enum20.Class,
				Class276.Enum20.Boolean
			}, medal, showStars);
		}

		public void SetMedal(NetCache.NetCacheMedalInfo medal)
		{
			method_9("SetMedal", new Class276.Enum20[1] { Class276.Enum20.Class }, medal);
		}

		public void SetMedal(MedalInfoTranslator medal, bool showStars)
		{
			method_9("SetMedal", new Class276.Enum20[2]
			{
				Class276.Enum20.Class,
				Class276.Enum20.Boolean
			}, medal, showStars);
		}

		public bool IsBestCurrentRankWild()
		{
			return method_11<bool>("IsBestCurrentRankWild", Array.Empty<object>());
		}

		public TranslatedMedalInfo GetMedal()
		{
			return method_14<TranslatedMedalInfo>("GetMedal", Array.Empty<object>());
		}

		public void UpdateStars(int numEarned, int numTotal)
		{
			method_8("UpdateStars", numEarned, numTotal);
		}

		public void MedalOver(UIEvent e)
		{
			method_8("MedalOver", e);
		}

		public void SetFormat(bool isWild)
		{
			method_8("SetFormat", isWild);
		}

		public void MedalOut(UIEvent e)
		{
			method_8("MedalOut", e);
		}

		public void UpdateMedal()
		{
			method_8("UpdateMedal");
		}
	}
}
